#ifndef MENSAJE_H
#define MENSAJE_H

#define unsigned char Uint8;
#define unsigned int PID;

struct DatosMensaje
{
	DatosMensaje() : emisor(NULL), receptor(NULL) {}
	PID emisor;
	PID receptor;
};

class Mensaje
{
	public:
		virtual int Serializar(Uint8* output) = 0;
		virtual void Cargar(Uint8* datos, int largo) = 0;
		PID Emisor() const		{ return emisor; }
		PID Receptor() const	{ return receptor; }
	protected:
		PID emisor;
		PID receptor;
};

class MensajeMoverJugador : Mensaje
{
	public:
		int Serializar(Uint8* output);
		void Cargar(Uint8* datos, int largo);
	private:
		
}

#endif
